home *** CD-ROM | disk | FTP | other *** search
/ 500 MB Nyheder Direkte fra Internet 6 / 500 MB nyheder direkte fra internet CD 6.iso / start / zipped / dos / novell / pnwtid.exe / 14935.TXT < prev    next >
Text File  |  1994-07-27  |  35KB  |  737 lines

  1.  
  2.  
  3.  
  4.               NOVELL TECHNICAL INFORMATION DOCUMENT
  5.  
  6. TITLE:              Memory - Conflicts, Usage, Optimization
  7. DOCUMENT ID:        TID014935
  8. DOCUMENT REVISION:  A
  9. DATE:               13JUL94
  10. ALERT STATUS:       Yellow
  11. INFORMATION TYPE:   Issue
  12. README FOR:         NA
  13.  
  14. NOVELL PRODUCT and VERSION:
  15. PERSONAL NetWare 1.0
  16.  
  17. ABSTRACT:
  18.  
  19. This document covers memory issues and concerns that may arise
  20. when using Personal NetWare.  Topics include memory conflicts,
  21. usage, and optimization.
  22.  
  23. ----------------------------------------------------------------
  24. DISCLAIMER
  25. THE ORIGIN OF THIS INFORMATION MAY BE INTERNAL OR EXTERNAL TO
  26. NOVELL.  NOVELL MAKES EVERY EFFORT WITHIN ITS MEANS TO VERIFY
  27. THIS INFORMATION.  HOWEVER, THE INFORMATION PROVIDED IN THIS
  28. DOCUMENT IS FOR YOUR INFORMATION ONLY.  NOVELL MAKES NO EXPLICIT
  29. OR IMPLIED CLAIMS TO THE VALIDITY OF THIS INFORMATION.
  30. ----------------------------------------------------------------
  31.  
  32. ISSUE
  33.  
  34. This document is broken into the following five sections:
  35.  
  36. 1.   How to resolve memory conflicts
  37. 2.   How Personal NetWare install/setup options affect memory
  38. 3.   How specific drivers use memory (excluding SERVER and VLM)
  39. 4.   How VLM.EXE uses memory
  40. 5.   How SERVER.EXE uses memory
  41.  
  42. Each section includes suggestions on optimizing your system.
  43.  
  44.  
  45. HOW TO RESOLVE MEMORY CONFLICTS
  46.  
  47. Memory conflicts can cause lockup, spontaneous rebooting, failure
  48. to communicate over the network, failure of floppy drives and
  49. other devices, and various error messages, especially "Protection
  50. Errors" or "Protection Faults".  Even if you do not suspect a
  51. memory conflict, the information in this section can be used for
  52. general trouble-shooting.
  53.  
  54. Some memory conflicts arise when hardware tries to use an upper
  55. memory address that is being used by other hardware or software. 
  56. Many network cards use upper memory, calling it "shared ram" or a
  57. "MEM address".  To resolve memory conflicts involving hardware,
  58. try the following:
  59.  
  60. 1.   If the memory conflict is between 2 hardware devices, you
  61. must change one device's configuration to use a different upper
  62. memory address.  Consult your hardware documentation for more
  63. information on how to accomplish this.
  64.  
  65. 2.   Even if you only have one hardware device using upper
  66. memory, you will probably run into conflicts with software that
  67. has been "highloaded" by a memory manager.  Use an exclude switch
  68. on your memory manager line (in the CONFIG.SYS file) to tell it
  69. not to let software use a specific area of upper memory.  Common
  70. memory managers that handle upper memory include EMM386.EXE,
  71. QEMM386.SYS, 386MAX, and the memory manager built into Windows. 
  72. Consult your DOS or third-party memory manager documentation for
  73. information on excluding upper memory ranges.  Consult your
  74. network card documentation to determine what addresses to
  75. exclude.
  76.  
  77. Some memory conflicts do not involve hardware.  They may occur
  78. when two software programs, often TSRs or device drivers, attempt
  79. to use the same area of memory.  If you think this is happening,
  80. try the following:
  81.  
  82. 1.   Make your configuration as simple as possible.  This can be
  83. accomplished by placing the word REM at the beginning of any line
  84. in your CONFIG.SYS or AUTOEXEC.BAT files which isn't absolutely
  85. necessary for the program which is having trouble.  REM will
  86. cause the line to be ignored.  If this approach fixes the
  87. problem, put the lines back one at a time to determine which item
  88. in your configuration is involved with the conflict.
  89.  
  90. 2.   Alter the order or location in which you load your drivers
  91. and TSRs.  This is especially helpful if you have some idea which
  92. drivers are involved.  Sometimes programs only conflict when
  93. loaded in a certain order.  Keep in mind, however, some drivers
  94. MUST be loaded in a particular order.
  95.  
  96. 3.   If you are loading drivers into upper memory, try putting
  97. them in conventional memory instead.  Upper memory was originally
  98. intended for use by hardware only. Occasionally software can
  99. cause problems when it uses upper memory.  Along these same
  100. lines, if you are using a memory manager that gives you access to
  101. upper memory blocks, such as EMM386.EXE or QEMM386, you could try
  102. using a memory manager that only manages extended memory, such as
  103. HIMEM.SYS or HIDOS.SYS.  This may not be desirable for the long
  104. run, but may give you or a technical analyst clues about the
  105. problem.
  106.  
  107.  
  108. HOW PERSONAL NETWARE INSTALL/SETUP OPTIONS AFFECT MEMORY
  109.  
  110. Using NWCACHE
  111.  
  112. NWCACHE will greatly speed up your access to local drives.  On a
  113. server, "speeding up the local drives" means that other clients
  114. who map to that server's drives will also see a speed increase. 
  115. Discussion of the memory implications of loading NWCACHE will
  116. occur later in this document, so we may go into extra detail.
  117.  
  118. Memory Management
  119.  
  120. If the Personal NetWare install program detects upper RAM
  121. provided by a memory manager on your machine, it will
  122. automatically set up your system to load most of the Personal
  123. NetWare drivers into upper memory.
  124.  
  125.  
  126. Server Types
  127.  
  128. Install will ask you about the types of servers you will be
  129. connecting to.  The number and types of servers you connect to
  130. will not significantly affect memory usage on your machine. 
  131. However, you will operate more quickly if you only choose those
  132. types of servers which you actually will be accessing.  These
  133. server types correspond to what NETWARE PROTOCOLS you will be
  134. loading.  Possible protocols are BIND (bindery servers, NetWare
  135. 2.x and 3.x), NDS (Novell Directory Services, NetWare 4.x) and
  136. PNW (Personal NetWare).  Your NET.CFG will be set up to reflect
  137. your choice.
  138.  
  139. Sharing Resources (making your machine a "server")
  140.  
  141. Install will give you the option to share your machine's
  142. resources.  Choosing to do this will result in SERVER.EXE loading
  143. into memory on your machine.  This can use anywhere from 30 to
  144. 100 Kilobytes of memory on your machine, depending on how you
  145. configure the server.  Loading this if you do not intend to use
  146. it will waste memory.  You can add it later if you change your
  147. mind.  More details on memory and server configuration will be
  148. given later in this document.
  149.  
  150. Using DPMS
  151.  
  152. DPMS is a memory specification that allows TSRs and device
  153. drivers to load portions of their code into extended memory, and
  154. execute there in protected mode.  To use this, your machine must
  155. be a 286 or higher, with extended memory.  You must also be
  156. loading a memory manager which can make extended memory available
  157. as XMS memory.  Using DPMS will save you significant amounts of
  158. memory if you will be using NWCACHE or if you have chosen to
  159. share your machine's resources (being a "server") on the network.
  160. Also, if you are using Novell DOS 7, DPMS will save you memory
  161. with NWCDEX.EXE, DELWATCH.EXE, and Stacker disk compression.
  162.  
  163. Enabling the SNMP Agent
  164.  
  165. The SNMP agent allows remote machines to gather network
  166. information from your machine.  This requires a significant
  167. amount of memory and is usually only necessary if the
  168. administrator of a Novell 3.x or 4.x network needs to gather
  169. information from your machine with special utilities.  Personal
  170. NetWare does not need SNMP for any of its own functions.
  171.  
  172. Enabling the Network Management Responder (NMR)
  173.  
  174. The NMR network management module will require less than 1
  175. Kilobyte of conventional memory on a machine with XMS.  It
  176. requires 2.5 Kilobytes on a machine without XMS.  It will allow
  177. you to use management features such as the Personal NetWare
  178. Diagnostics, which can analyze your network connections and
  179. communications.  If you have already diagnosed any communication
  180. problems you experienced in setting up the network, you may want
  181. to turn this feature off, to save memory.
  182.  
  183.  
  184. HOW SPECIFIC DRIVERS USE MEMORY (EXCLUDING SERVER AND VLM)
  185.  
  186. Often, network drivers require more memory to load (initialize)
  187.  
  188. than they need to operate after initializing.  Knowing this can
  189. be especially important when trying to load drivers into upper
  190. memory blocks, as space in upper memory is often very limited. 
  191. In addition, some of the Personal NetWare drivers have options
  192. that affect which types of memory the program loads into.  The
  193. commands that load the Personal NetWare drivers are usually found
  194. in the STARTNET.BAT file in the NWCLIENT subdirectory.
  195.  
  196. LSL.COM
  197.  
  198. In its default configuration, LSL.COM requires approximately 18
  199. to 22 Kilobytes of contiguous memory to initialize; then it
  200. reduces to 5 1/2 Kilobytes.  It can be loaded into upper memory
  201. by DOS or third-party memory managers.  However, in rare
  202. instances LSL has not been able to perform all of its functions
  203. when placed in upper memory.  If you have trouble with LSL in
  204. upper memory, try loading it in conventional.
  205.  
  206. IPXODI.COM
  207.  
  208. In its default configuration, IPXODI.COM requires 34 to 38
  209. Kilobytes of contiguous memory to initialize; then it reduces to
  210. 16 Kilobytes.  It can be loaded into upper memory by DOS or
  211. third-party memory managers.  
  212.  
  213. IPXODI.COM provides both IPX and SPX services.  If you do not
  214. need SPX services, load IPXODI with the A parameter (LH IPXODI
  215. A).  This will save memory.  However, you may have applications
  216. which require SPX.  Generally, these applications will tell you
  217. they require SPX either in documentation or via an error message
  218. if you do not have SPX active.  
  219.  
  220. Using the "A" parameter also disables a diagnostic responder. 
  221. This is used by the Network Management Responder (NMR.VLM). 
  222. This, in turn, is used by Personal NetWare Diagnostics.  However,
  223. you may not need these Diagnostics unless you experience
  224. communication problems.  If you wish to disable the diagnostic
  225. responder but leave SPX active, load IPXODI with a "D" parameter.
  226. There is no way to disable SPX but leave the diagnostic
  227. responder.
  228.  
  229. NWCACHE without DPMS support
  230.  
  231. NWCACHE (the program itself) will use a minimum of 26 kilobytes
  232. of memory.  If you use EMS memory for the cache buffer, it will
  233. not require any more than this.  If you use XMS for the cache
  234. buffer, the NWCACHE program will require an additional 3 1/2 K
  235. for every 1 megabyte of cache buffer.  For example, a 5 megabyte
  236. cache in XMS memory would cause the NWCACHE program code to
  237. occupy approximately 42 kilobytes of memory.  The advantage of
  238. using EMS memory will not be significant enough to justify the
  239. creation of a EMS page frame just for the purposes of NWCACHE, as
  240. an EMS page frame uses 64K of upper memory.
  241.  
  242. NWCACHE with DPMS Support
  243.  
  244. If DPMS is enabled, NWCACHE will take approximately 21 kilobytes
  245. of space, regardless of what type of memory the cache buffer is
  246. given, and regardless of the size of the cache buffer.
  247.  
  248.  
  249. NWCACHE (general)
  250.  
  251. Initialization and post-initialization sizes are not
  252. significantly different with NWCACHE.  It will automatically load
  253. all or part of its code into available upper memory.  It may
  254. leave a 16 Kilobyte buffer in conventional memory.  This can be
  255. reduced in size or forced into upper or EMS memory (if they are
  256. available) by using /BU or /BE on the line that loads NWCache. 
  257. Type NWCACHE/? at the DOS command line for more information on
  258. these options.
  259.  
  260.  
  261. HOW VLM.EXE USES MEMORY
  262.  
  263. The Virtual Loadable Modules (VLMs) require approximately 100
  264. Kilobytes of memory.  However, if your machine has extended
  265. memory managed to the XMS or EMS standards, 45 Kilobytes of this
  266. will automatically be placed into such memory.  If VLM.EXE is not
  267. automatically using your available XMS or EMS, try using /MX or
  268. /ME (respectively) to specify which memory to use.  Make sure you
  269. are not using a /MC, as this forces VLM.EXE to remain in
  270. conventional memory.  Forcing VLM to remain in conventional
  271. should only be done if memory usage is not important and greater
  272. network performance (speed) is needed.  Type VLM /? at the dos
  273. command line for more information on VLM options.
  274.  
  275. In addition to using XMS or EMS memory, up to 50 kilobytes of the
  276. remaining code will automatically be placed in upper memory if
  277. there is enough space.  Approximately 5 kilobytes remain in
  278. conventional unless you specifically use your memory manager to
  279. load it into upper memory.  Keep in mind, however, that your
  280. network performance may decrease when putting all of VLM.EXE into
  281. upper memory.  This is not unique to VLM.EXE.  It is due to how
  282. upper memory is accessed.  Virtually any program will operate
  283. slower in upper memory than it will in conventional memory.
  284.  
  285. Initializing the entire 55 kilobyte portion of VLM into one
  286. contiguous upper memory area requires 70 to 74 kilobytes of
  287. memory.  However, because VLM splits its own code into several
  288. pieces, you may not need one contiguous area of that size.
  289.  
  290. You can reduce the normal size of VLM.EXE by not loading some of
  291. its components.  There are many "VLMs"--small modules that match
  292. the filespec "*.VLM".  If you do not attach to NetWare versions
  293. 2.x, 3.x, or 4.x, do not load BIND.VLM, NDS.VLM, NETX.VLM,
  294. SECURITY.VLM, and RSA.VLM.  The best way to prevent these from
  295. loading is to edit the NET.CFG file, and in the "NetWare DOS
  296. Requester" section, insert lines which read "EXCLUDE VLM =
  297. BIND.VLM", etc.  If you do not load SECURITY.VLM, you may need to
  298. add the line "SIGNATURE LEVEL = 0" to the NET.CFG file as well,
  299. to keep VLM.EXE from returning an error.  Another way to prevent
  300. certain VLMs from loading is to rename them (ie rename BIND.VLM
  301. to BIND.VLM).
  302.  
  303. If your machine will never be printing to a network printer, you
  304. can also omit loading PRINT.VLM.  You will still be able to print
  305. to a local printer.  "Local printer" means a printer that is
  306. attached to your machine and has not been designated as a shared
  307. printer.  In other words, you will not be able to print to a
  308. printer that is shared if you do not load PRINT.VLM--even if it
  309. is physically attached to your machine.
  310.  
  311. Another change which causes VLM to use less memory is to add
  312. "RESPONDER = OFF" to the NET.CFG (also in the NetWare DOS
  313. Redirector section).  This will save a little memory, but your
  314. machine will no longer respond when other stations use NET ULIST.
  315.  
  316. There is a debugging tool built into VLM which may help you
  317. determine how much memory different VLMs use, and whether you are
  318. using certain ones.  VLM /D displays this diagnostic information.
  319. It takes more than one page, so you may want to send it to a
  320. file, a printer, or to MORE if you want it to pause on the screen
  321. after each page.  Examples of commands to accomplish these are,
  322. respectively:
  323.  
  324. VLM /D > C:\VLM.MEM
  325. VLM /D > LPT1
  326. VLM /D | MORE
  327.  
  328. The diagnostic information is quite complex, and most of it does
  329. not fall within the scope of this document.  However, there are a
  330. few pieces of the information which may be useful.  Here is an
  331. excerpt from the VLM /D display (the right most column of the
  332. display has been cut off in order to fit this page.  It is not
  333. relevant to our needs):
  334.  
  335. VLM diagnostic information             Address        Memory Sizes
  336. NAME     ID   Flag Func Maps Call TSeg GSeg Low  High  TSize GSize
  337. -------- ---- ---- ---- ---- ---- ---- ---- ---- ----  ----- -----
  338. VLM      0001 A000 0005 0000 CE70 E5C2 09AF FFFF 0000   4912 0
  339. CONN     0010 B000 0011 0000 0282 0656 071A FFFF FFFF   3136 384
  340. IPXNCP   0021 B000 000B 0000 0404 0732 084F FFFF FFFF   4560 3328
  341. TRAN     0020 E000 000B 0001 4379 0732 084F FFFF FFFF    285 208
  342. SECURITY 0061 A000 0005 007B 007A E6E6 091F 0000 0000   4192 0
  343. NDS      0032 A000 0010 02E7 03AE E6E6 091F 1060 0000   5952 896
  344. PNW      0033 A000 0010 0089 0092 E6E6 0957 27A0 0000   5680 2528
  345. BIND     0031 A000 0010 01C2 0055 E6E6 09F5 3DD0 0000   2992 448
  346. NWP      0030 A000 0011 025F 00F6 E6E6 0A11 4980 0000   2960 1824
  347. FIO      0041 A000 000B 0D7E 2473 E6E6 0A83 5510 0000   6848 11600
  348. GENERAL  0043 A000 000A 0413 0416 E6E6 0D58 6FD0 0000   1744 624
  349. REDIR    0040 A000 0009 0FB4 1DCD E6E6 0D7F 76A0 0000   9520 2400
  350. PRINT    0042 A000 000F 0519 0560 E6E6 0E15 9BD0 0000   3936 3328
  351. NETX     0050 A000 0007 0559 089C E6E6 0EE5 AB30 0000   8992 4016
  352. AUTO     0060 A000 0006 0082 007F E6E6 0FE0 CE50 0000   2256 592
  353. Total                                                  67680 31968
  354. Maximum                                                 9520 11600
  355.  
  356. We will refer to columns: Name; Flag; Call; TSize; GSize.
  357.  
  358. NAME - The left column lists the VLM name (ie REDIR corresponds
  359. to REDIR.VLM).
  360.  
  361. FLAG - The Flag column indicates (among other things) whether or
  362. not the component is loaded.  Anything other than 0 (or 0000)
  363. indicates that the specified VLM is loaded.  Most of the time, if
  364. a VLM is not loaded, it will not appear on this list at all.
  365.  
  366. CALL - The number of times (in hexadecimal) this particular VLM
  367. has been called.  This may help you identify a VLM which you
  368. don't actually need to load.  Keep in mind, however, that just
  369. loading VLM.EXE, as well as using VLM /D makes calls to the
  370. individual modules.  So even modules you don't really need will
  371. still show they are being used.  However, if you have been using
  372.  
  373. the network for over an hour, and you still notice a particular
  374. VLM which has been used less that most the others, look it up in
  375. the documentation to determine its purpose.
  376.  
  377. TSIZE - This refers to "Transient Size" (in decimal).  As a
  378. GENERAL rule, the transient code is placed in XMS (or EMS) memory
  379. and is moved (hence the label "transient") to conventional or
  380. upper when it is to be executed.  The total amount of transient
  381. code is listed near the bottom, followed by a number referred to
  382. as MAXIMUM.  This corresponds to the largest single piece of
  383. transient code.  Swap space of this amount is established by
  384. VLM.EXE in upper or conventional memory.
  385.  
  386. GSIZE - This refers to VLM code (in decimal) which does not get
  387. moved around.  It always remains in upper and/or conventional
  388. memory.
  389.  
  390.  
  391. HOW SERVER.EXE USES MEMORY
  392.  
  393. SERVER.EXE can be configured to use anywhere from 30 to over 100
  394. Kilobytes of memory.  The exact amount will depend upon the
  395. configuration.  You can load SERVER.EXE into upper memory with a
  396. DOS or third-party memory manager.  Regardless of how small you
  397. set your server configuration, SERVER.EXE will require at least
  398. 80 to 84 Kilobytes of space to initialize.  This means that if
  399. you do not have at least one contiguous upper memory area of
  400. approximately 84 Kilobytes at the time SERVER loads, you will not
  401. be able load it into upper memory.  This is true regardless of
  402. whether or not DPMS support has been loaded.  If you configure
  403. server to use over 84 kilobytes, the memory it needs to
  404. initialize will not be significantly different from the
  405. post-initialization size.
  406.  
  407. Tips for Loading SERVER.EXE into Upper Memory
  408.  
  409. If you are having trouble loading SERVER.EXE into upper memory,
  410. it would most likely be because you do not have a contiguous area
  411. of upper memory large enough for server to initialize.  If your
  412. server is configured to use more than 80 Kilobytes, try reducing
  413. the configuration settings to bring the size just below 80
  414. Kilobytes.  
  415. You may be able to change the size of your upper memory areas by
  416. altering your hardware or software.  Following are some possible
  417. ways of increasing your available upper memory areas.
  418.  
  419. 1.   Areas of upper memory used by hardware tend to reduce and
  420. divide the space available for loading software.  You may be able
  421. to increase the size of your largest available upper memory area
  422. by setting your hardware to their lowest or highest settings. 
  423. For example, a network card which uses upper memory may cut your
  424. upper memory in half, giving you two small areas instead of one
  425. large one. Setting the card to use the low end (around C800 or
  426. CC00) or the high end (E000 or above) will help prevent this.
  427.  
  428. 2.   If your memory manager is UNNECESSARILY establishing a Page
  429. Frame for expanded memory, also referred to as EMS memory or LIM
  430. memory, you will gain 64 kilobytes more upper memory by turning
  431. that feature off.  Consult your software applications'
  432. documentation to determine if you need EMS memory.  Consult your
  433. DOS or third-party memory manager documentation for instructions
  434.  
  435. on turning off EMS memory.  Some Personal NetWare drivers will
  436. OPTIONALLY use EMS memory.  However, those drivers will use XMS
  437. (extended) memory just as efficiently if you have Novell's DPMS
  438. support loaded.
  439.  
  440. 3.   You may wish to let your smaller drivers reside in
  441. conventional memory in order to have enough upper memory for
  442. server to initialize there.  In other words, you may be able to
  443. gain a lot by giving up a little.
  444.  
  445. Using DPMS
  446.  
  447. To reduce the amount of memory SERVER.EXE takes, you can put
  448. approximately 20 Kilobytes of code into XMS memory by using DPMS.
  449. This will occur automatically as long as DPMS.EXE is loading
  450. somewhere before SERVER.EXE.
  451.  
  452. If DPMS is loaded, the estimate of Server Size given in the
  453. SERVER CONFIGURATION section of NET ADMIN will not include the
  454. amount of code going into DPMS.  The amount it specifies will be
  455. the amount that must remain in either conventional or upper
  456. memory.
  457.  
  458. Automatic Configuration of the Server
  459.  
  460. To get good results from the Automatic Configuration feature, you
  461. MUST go into the advanced settings and select an accurate number
  462. of connections.  The number of connections should usually be set
  463. to the number of machines you plan to have in the workgroup,
  464. (including your own) plus two.  This can be reduced, however, if
  465. only a portion of the users in the workgroup will be accessing
  466. your server.  For example, if your machine is a server but is not
  467. the server generally used for file or print sharing, you probably
  468. won't have as many users trying to connect to your machine.
  469.  
  470. When you run the Automatic Configuration for the server, the
  471. system checks the number of connections you have selected in
  472. Advanced Settings and bases the number of Client Tasks upon this.
  473. Client tasks will be set at a certain multiple of your
  474. connections.  This multiple will depend on what choice was made
  475. for automatic configuration.  If MINIMUM MEMORY was chosen, then
  476. the multiple will be 2 Client Tasks per connection.  If BALANCED
  477. was chosen, then the multiple will be 3 Client Tasks per
  478. connection.  If MAXIMUM PERFORMANCE was chosen, then the multiple
  479. will be 5 Client Tasks per connection. .
  480.  
  481. In addition to client tasks, the automatic configuration will
  482. also alter your DIRECTORY BUFFERS, PRINT BUFFER SIZE, NUMBER OF
  483. RECEIVE BUFFERS, RECEIVE BUFFER SIZE, NUMBER OF I/O BUFFERS, and
  484. I/O buffer size multiplier.  The values it selects will depend on
  485. which type of automatic configuration you select.  In other
  486. words, changing the number of connections will not affect the
  487. values of those fields.  SHARED DIRECTORIES, SHARED PRINTERS,
  488. CONNECTIONS, and SERVICE EXTENSIONS are not altered by the
  489. automatic configuration.
  490.  
  491. Please note that automatic configuration is not an on-going
  492. process.  If you wish to use this feature, you should re-select
  493. it anytime you change the number of CONNECTIONS, even if you are
  494. not selecting a different type of automatic configuration.  Do
  495. not be concerned if you have chosen one type of automatic
  496.  
  497. configuration and subsequently you notice it listed differently. 
  498. Because it is not an on-going process, it will not change your
  499. configuration unless you select it yourself.
  500.  
  501. Advanced Settings
  502.  
  503. Sometimes lowering your configuration is necessary because you
  504. need more memory for other things or because your current
  505. settings may cause SERVER.EXE to exceed its maximum allowable
  506. size.  Following are some tips for reducing server size through
  507. the settings accessible in "Advanced Settings...".
  508.  
  509. To access the server configuration, you must first login as a
  510. user who has rights to change the server configuration.  Usually
  511. the SUPERVISOR or anyone designated as a WORKGROUP MANAGER has
  512. sufficient rights.  However, sometimes only the owner of the
  513. server has the needed rights.  Then, issue the command NET ADMIN.
  514. Select the server you wish to configure and press ENTER.  Among
  515. other things, the user who is the "owner" of the server will be
  516. displayed.  Write down the "Future server memory size" so you can
  517. compare after making changes.  Choose "Advanced Settings...."
  518.  
  519. SHARED DIRECTORIES - Make sure this is not higher than the number
  520. of shared directories you need to create ON THIS MACHINE.  The
  521. "First Time SETUP" usually creates one for each partition on your
  522. hard drive.  You may set up more if you wish.  If this server is
  523. only sharing a printer, set this to 0.  This will cause the File
  524. Sharing Loadable Module to be disabled, which will greatly reduce
  525. server size.  
  526.  
  527.      NOTE:     Once the module is disabled, you cannot access the
  528. "Shared directories" field until you enable it in the Loadable
  529. Modules section (which will be discussed in a later section).
  530.  
  531. SHARED PRINTERS - Make sure this is not higher than the number of
  532. printers ON THIS MACHINE which will be shared on the network.  If
  533. none, enter 0.  Reductions to this number save the memory that
  534. print buffers would use.  Setting it at 0 causes the Print
  535. Sharing Loadable Module to be disabled, saving you even more.  
  536.  
  537.      NOTE:     Once you save the setting at 0, you can only gain
  538. access to the field by enabling the Print Sharing Loadable
  539. Module.
  540.  
  541. CONNECTIONS - Proper setting of Connections is discussed above in
  542. the "Automatic Configuration" section.
  543.  
  544. CLIENT TASKS - Reducing client tasks will not save you much
  545. memory.  In addition, reducing them may cause slowness or errors
  546. while running applications from a server.  So don't skimp on this
  547. setting.  Some general rules for client tasks include:  (A) They
  548. should be set to AT LEAST 2 client tasks per connection.  (B) For
  549. networks where the clients run standard DOS applications and do
  550. not multi-task or task-switch, you probably won't have to set
  551. more than 5 client tasks per connection.  (C) For networks
  552. supporting large database programs or running Windows or Windows
  553. applications over a network, you may need to set client tasks as
  554. high as 10 or more per connection.  Note that the setting in the
  555. server configuration is not "per connection".  If you have 6
  556. connections set and want 5 client tasks per connection, set the
  557. Client Tasks figure to 30.
  558.  
  559. DIRECTORY BUFFERS - These temporarily store information used to
  560. get directory lists and access files over the network.  The
  561. default which is set by installation or by the automatic
  562. configuration is usually both adequate for performance and low on
  563. memory usage.  These buffers are used for "dirnext" or "findnext"
  564. functions.
  565.  
  566. PRINT BUFFER SIZE - One print buffer will be allocated for each
  567. shared printer.  The size will affect the speed at which
  568. SERVER.EXE prints, but will not affect the speed at which
  569. applications send the job to the server.  This is because
  570. Personal NetWare uses an efficient print spooler, which accepts
  571. up to 50 jobs very quickly, regardless of how fast the printer is
  572. actually printing.  In other words, setting this at a minimum
  573. will save memory without causing anyone's machine to make them
  574. wait extra time for their application to send the print job.
  575.  
  576. NO OF RECEIVE BUFFERS - Data coming to and from the server is
  577. stored in these buffers.  For performance reasons, you will
  578. probably want the receive buffers to at least equal the number of
  579. machines on the network.  However, you may be able to set this
  580. even lower if network traffic to this server is relatively low. 
  581. This setting will affect memory usage quite a bit.
  582.  
  583. RECEIVE BUFFER SIZE - Like the number of receive buffers, the
  584. receive buffer size is also a trade off between memory and speed.
  585. For highest efficiency, set receive buffer size to the highest
  586. allowed by the network card.  This will relate to the size of
  587. packets the card can send, not necessarily to the maximum you are
  588. allowed to set in the server configuration.  To find the maximum
  589. your card allows, set the receive buffer size as high as
  590. possible.  Note that you may have to decrease other settings
  591. temporarily to be allowed to set this buffer to its maximum. 
  592. Save the configuration and reboot to reload server.  Then go back
  593. to server configuration, advanced settings.  The "CONFIGURED"
  594. column will list the maximum the card allows.  Set the "FUTURE"
  595. column equal to or less than this number.
  596.  
  597. To save memory, you can decrease the receive buffer size.  This
  598. can save large amounts of space as it will affect the I/O buffer
  599. size as well.  The less the network traffic to this server, the
  600. smaller you can set these buffers without noticing significant
  601. performance degradation.
  602.  
  603. NUMBER OF IO BUFFERS - An I/O buffer is used as a temporary
  604. storage area to store read/write data from a file.  These buffers
  605. have the best performance when sequential reads and writes are
  606. performed.  The number of IO buffers is the actual number of
  607. buffers allocated in memory.  If you have an external cache
  608. program loaded, it is recommended to set the number of IO buffers
  609. to zero.  An external cache usually has a much higher performance
  610. of caching due to size and specific purpose.
  611.  
  612. IO BUFFER SIZE MULTIPLIER - The IO buffer size multiplier is the
  613. size, in kilobytes, of each IO buffer.  To determine the total
  614. amount of additional memory required to use IO buffering,
  615. multiply the number of IO buffers by the IO buffer size
  616. multiplier.  For example,  if you have the number of IO buffers
  617. set at 2 and the IO buffer size multiplier set at 4, then you
  618. would have two IO buffers that are 4 kilobytes (or 4096 bytes) in
  619. size.  Total space required for the two buffers would be 8
  620. kilobytes (or 4096 + 4096 = 8192 bytes).
  621.  
  622. SERVICE EXTENSIONS - If you don't know what service extensions
  623. are, you can probably set them to zero.  If you are supporting
  624. SNMP on this server (discussed earlier) set this to 1.  Also set
  625. this to 1 if you have a Zenith Z-Stor Personal Server.  The first
  626. service extension will cost you less than 1 kilobyte.  Additional
  627. extensions will cost only 48 bytes each.
  628.  
  629. USE CONFIG.SYS OPEN FILES - Use CONFIG.SYS file handles (the
  630. files= statement used by DOS) unless you have heavy enough use of
  631. the server to require more than 255 files to be open at once. 
  632. Extra files will require a significant amount of memory.
  633.  
  634. NUMBER OF OPEN FILES - This option is only used if the Use
  635. CONFIG.SYS Open Files option is not selected.  It determines how
  636. many files can be opened on the server at one time.  The maximum
  637. this can be set to is 1000 per server.
  638.  
  639. Loadable Modules
  640.  
  641. Choosing NOT to load certain loadable modules can also save you
  642. memory.  You can choose to edit the Loadable Modules from the
  643. same screen on which you select Advanced Settings for the server
  644. configuration, discussed above.  Loadable Modules correspond to
  645. portions of SERVER.EXE code.  They do not correspond to the VLMs
  646. (Virtual Loadable Modules) which form the CLIENT portion of the
  647. server/client relationship.  Most modules are only directly
  648. responsible for small amounts of memory.  However, sometimes
  649. disabling a module causes other settings to be ignored, resulting
  650. in additional memory savings.  For instance, without the File
  651. Sharing Module, IO buffers will not be created.  So on some
  652. servers, disabling a particular module may save you a lot of
  653. memory, while on a different server, if may only make a small
  654. difference.
  655.  
  656. FILE SHARING - If the server is only sharing a printer, do not
  657. load this module.
  658.  
  659. PRINT SHARING - If the server is not sharing a printer, do not
  660. load this module.
  661.  
  662. SECURITY - We have observed some unusual behavior on servers with
  663. security disabled.  Due to this, we recommend you leave security
  664. on and use Full Authentication.
  665.  
  666. FULL AUTHENTICATION - If the FULL AUTHENTICATION module is
  667. loaded, then the system checks the passwords on accounts when
  668. users log in.  If this module is not loaded, no user is prompted
  669. for a password during LOGIN.  FULL AUTHENTICATION should ALWAYS
  670. be checked in this version.
  671. LOCAL AUTHENTICATION - If the LOCAL AUTHENTICATION is loaded, the
  672. users are allowed to login locally only, and cannot access
  673. resources across the network, and remote login is not allowed. 
  674. The LOCAL AUTHENTICATION is for future versions of Personal
  675. NetWare, therefore, FULL AUTHENTICATION should ALWAYS be checked
  676. in this version.
  677.  
  678. POP-UP SCREENS - Normally, the server pops-up warnings concerning
  679. printers that appear off-line, an attempt to reboot the server,
  680. etc.  If you do not want or need this service, you can turn it
  681. off.
  682.  
  683.  
  684. REPORTING - This option turns enables the audit and error logs
  685. features of Personal NetWare for this server.  Reporting allows
  686. you to track errors reported by the server, as well as normal
  687. behavior (ie users logging in, servers coming "up" or "down"). 
  688. The nature of this information makes it either very important or
  689. very unnecessary.
  690.  
  691. DIAGNOSTICS - This module supports calls made by NET DIAGS (and
  692. the Windows utility "Personal NetWare Diagnostics").  If you
  693. don't use these programs, you can turn this feature off.
  694.  
  695. CONSOLE - This module supports NET CONSOLE, which allows you to
  696. see who is connected, what files they have open, and allows you
  697. to clear connections.  Note that "clearing connections" is not
  698. something you usually need to worry about.  Personal NetWare will
  699. automatically clear unused connections.  Connections in use will
  700. automatically re-connect even when you have specifically cleared
  701. them.
  702.  
  703. SALVAGE - This module only applies to Novell DOS 7 users.  If the
  704. server is running Novell DOS's DELWATCH TSR, Salvage will allow
  705. you undelete files over the network.  Without Salvage, you would
  706. have to be at the server itself to undelete files.
  707.  
  708.  
  709. ONE FINAL TIP
  710.  
  711. This is "undocumented" and not supported, but there is another
  712. small piece of code in server which you can disable.  You can
  713. save an additional 192 bytes of memory by loading server with an
  714. L option ("SERVER L").  There are certain database programs (i.e.
  715. DBase, Clipper) that are NetWare aware but use an NCP call
  716. (NetWare Core Protocol) incorrectly.  Server usually accounts for
  717. this, but the L option disables this protection.  If you share a
  718. database or load SHARE with extra locks, do not use this
  719. parameter.
  720.  
  721. The term "not supported" means you use it at your own risk.  If
  722. it causes a problem, Novell cannot help you solve it, except to
  723. say "don't use that option".  Before calling Novell for technical
  724. support on ANY Personal NetWare problem, you should have SERVER
  725. loaded without the L option, even if it appears to make no
  726. difference.
  727.  
  728.  
  729. _Verified by customer
  730. _Verified by Novell
  731.  
  732. ----------------------------------------------------------------
  733. Any trademarks referenced in this document are the property of
  734. their respective owners.  Consult your product manuals for
  735. complete trademark information.
  736. ----------------------------------------------------------------
  737.